package com.apps.sdses.flink141;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.io.Serializable;

@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class DebeziumSourceRecord implements Serializable {

    @JsonProperty(value ="version")
    public String version;

    @JsonProperty(value ="connector")
    public String connector;

    @JsonProperty(value ="name")
    public String name;

    @JsonProperty(value ="ts_ms")
    public Long tsMs;

    @JsonProperty(value ="snapshot")
    public String snapshot;

    @JsonProperty(value ="db")
    public String db;

    @JsonProperty(value ="table")
    public String table;

    /**
     *  [MySQL]
     */
    @JsonProperty(value ="server_id")
    public Long serverId;

    /**
     *  [MySQL]
     */
    @JsonProperty(value ="gtid")
    public String gtid;

    /**
     *  [MySQL]
     */
    @JsonProperty(value ="row")
    public Long row;

    /**
     *  [MySQL]
     */
    @JsonProperty(value ="file")
    public String file;

    /**
     *  [MySQL]
     */
    @JsonProperty(value ="pos")
    public Long pos;

    /**
     *  [Postgresql] [Polardb-O]
     */
    @JsonProperty(value ="sequence")
    public String sequence;

    /**
     *  [Postgresql] [Polardb-O]
     */
    @JsonProperty(value ="schema")
    public String schema;

    /**
     *  [Postgresql] [Polardb-O]
     */
    @JsonProperty(value ="txId")
    public Long txId;

    /**
     *  [Postgresql] [Polardb-O]
     */
    @JsonProperty(value ="lsn")
    public Long lsn;

}
